A data object may be passed between applications by electronic means. A common technique to pass a data object includes object serialization. A serialized object may refer to an object represented as a sequence of bytes that includes the object's data as well as information about the object's type and the types of data stored in the object. Serialization may include writing an entire object to a stream, persisting the object, and/or sending the object over a network. Serialization enables object persistence because the stored object continues to serve a purpose even when the program is not running. Thus, a serialized object is capable of existing and functioning outside of the program that created it. An object may be serialized to disk on a single computer or may be serialized across a network such as the Internet.
After a serialized object has been, for example, written into a file or sent over a network, it can be deserialized. Deserialization may refer to reading or loading the object, and the type information and bytes that represent the object and its data may be used to recreate the object in memory.